blob: c9d26bc1a214a81cd6793a8a475f6a205067ea9b [file] [log] [blame]
Sam Ravnborg14f31562007-09-26 20:15:39 +02001/* ANSI-C code produced by gperf version 3.0.2 */
Roman Zippel7a884882005-11-08 21:34:51 -08002/* Command-line: gperf */
3/* Computed positions: -k'1,3' */
4
5#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
6 && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
7 && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
8 && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
9 && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
10 && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
11 && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
12 && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
13 && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
14 && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
15 && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
16 && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
17 && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
18 && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
19 && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
20 && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
21 && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
22 && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
23 && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
24 && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
25 && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
26 && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
27 && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
28/* The character set is not based on ISO-646. */
29#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
30#endif
31
32struct kconf_id;
Sam Ravnborg14f31562007-09-26 20:15:39 +020033/* maximum key range = 47, duplicates = 0 */
Roman Zippel7a884882005-11-08 21:34:51 -080034
35#ifdef __GNUC__
36__inline
37#else
38#ifdef __cplusplus
39inline
40#endif
41#endif
42static unsigned int
43kconf_id_hash (register const char *str, register unsigned int len)
44{
45 static unsigned char asso_values[] =
46 {
Sam Ravnborg14f31562007-09-26 20:15:39 +020047 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
48 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
49 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
50 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
51 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
52 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
53 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
54 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
55 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
Roman Zippel93449082008-01-14 04:50:54 +010056 49, 49, 49, 49, 49, 49, 49, 35, 35, 5,
Sam Ravnborg14f31562007-09-26 20:15:39 +020057 0, 0, 5, 49, 5, 20, 49, 49, 5, 20,
Roman Zippel93449082008-01-14 04:50:54 +010058 5, 0, 30, 49, 0, 15, 0, 10, 0, 49,
59 10, 49, 49, 49, 49, 49, 49, 49, 49, 49,
Sam Ravnborg14f31562007-09-26 20:15:39 +020060 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
61 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
62 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
63 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
64 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
65 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
66 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
67 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
68 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
69 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
70 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
71 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
72 49, 49, 49, 49, 49, 49
Roman Zippel7a884882005-11-08 21:34:51 -080073 };
74 register int hval = len;
75
76 switch (hval)
77 {
78 default:
79 hval += asso_values[(unsigned char)str[2]];
80 /*FALLTHROUGH*/
81 case 2:
82 case 1:
83 hval += asso_values[(unsigned char)str[0]];
84 break;
85 }
86 return hval;
87}
88
89struct kconf_id_strings_t
90 {
Roman Zippelf6a88aa2006-06-08 22:12:44 -070091 char kconf_id_strings_str2[sizeof("on")];
Roman Zippel93449082008-01-14 04:50:54 +010092 char kconf_id_strings_str3[sizeof("env")];
Sam Ravnborg14f31562007-09-26 20:15:39 +020093 char kconf_id_strings_str5[sizeof("endif")];
94 char kconf_id_strings_str6[sizeof("option")];
95 char kconf_id_strings_str7[sizeof("endmenu")];
96 char kconf_id_strings_str8[sizeof("optional")];
97 char kconf_id_strings_str9[sizeof("endchoice")];
Roman Zippel7a884882005-11-08 21:34:51 -080098 char kconf_id_strings_str10[sizeof("range")];
Sam Ravnborg14f31562007-09-26 20:15:39 +020099 char kconf_id_strings_str11[sizeof("choice")];
100 char kconf_id_strings_str12[sizeof("default")];
101 char kconf_id_strings_str13[sizeof("def_bool")];
102 char kconf_id_strings_str14[sizeof("help")];
Sam Ravnborg14f31562007-09-26 20:15:39 +0200103 char kconf_id_strings_str16[sizeof("config")];
104 char kconf_id_strings_str17[sizeof("def_tristate")];
Roman Zippel93449082008-01-14 04:50:54 +0100105 char kconf_id_strings_str18[sizeof("hex")];
Sam Ravnborg14f31562007-09-26 20:15:39 +0200106 char kconf_id_strings_str19[sizeof("defconfig_list")];
107 char kconf_id_strings_str21[sizeof("string")];
108 char kconf_id_strings_str22[sizeof("if")];
109 char kconf_id_strings_str23[sizeof("int")];
Sam Ravnborg14f31562007-09-26 20:15:39 +0200110 char kconf_id_strings_str26[sizeof("select")];
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700111 char kconf_id_strings_str27[sizeof("modules")];
Sam Ravnborg14f31562007-09-26 20:15:39 +0200112 char kconf_id_strings_str28[sizeof("tristate")];
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700113 char kconf_id_strings_str29[sizeof("menu")];
Sam Ravnborg14f31562007-09-26 20:15:39 +0200114 char kconf_id_strings_str31[sizeof("source")];
115 char kconf_id_strings_str32[sizeof("comment")];
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700116 char kconf_id_strings_str35[sizeof("menuconfig")];
Sam Ravnborg14f31562007-09-26 20:15:39 +0200117 char kconf_id_strings_str36[sizeof("prompt")];
118 char kconf_id_strings_str37[sizeof("depends")];
Roman Zippel93449082008-01-14 04:50:54 +0100119 char kconf_id_strings_str39[sizeof("bool")];
120 char kconf_id_strings_str41[sizeof("enable")];
121 char kconf_id_strings_str42[sizeof("boolean")];
Sam Ravnborg14f31562007-09-26 20:15:39 +0200122 char kconf_id_strings_str48[sizeof("mainmenu")];
Roman Zippel7a884882005-11-08 21:34:51 -0800123 };
124static struct kconf_id_strings_t kconf_id_strings_contents =
125 {
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700126 "on",
Roman Zippel93449082008-01-14 04:50:54 +0100127 "env",
Sam Ravnborg14f31562007-09-26 20:15:39 +0200128 "endif",
129 "option",
130 "endmenu",
131 "optional",
132 "endchoice",
133 "range",
134 "choice",
Roman Zippel7a884882005-11-08 21:34:51 -0800135 "default",
136 "def_bool",
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700137 "help",
Sam Ravnborg14f31562007-09-26 20:15:39 +0200138 "config",
139 "def_tristate",
Roman Zippel93449082008-01-14 04:50:54 +0100140 "hex",
Sam Ravnborg14f31562007-09-26 20:15:39 +0200141 "defconfig_list",
142 "string",
143 "if",
144 "int",
Sam Ravnborg14f31562007-09-26 20:15:39 +0200145 "select",
146 "modules",
147 "tristate",
148 "menu",
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700149 "source",
150 "comment",
Sam Ravnborg14f31562007-09-26 20:15:39 +0200151 "menuconfig",
152 "prompt",
153 "depends",
Roman Zippel93449082008-01-14 04:50:54 +0100154 "bool",
155 "enable",
156 "boolean",
Sam Ravnborg14f31562007-09-26 20:15:39 +0200157 "mainmenu"
Roman Zippel7a884882005-11-08 21:34:51 -0800158 };
159#define kconf_id_strings ((const char *) &kconf_id_strings_contents)
160#ifdef __GNUC__
161__inline
162#endif
163struct kconf_id *
164kconf_id_lookup (register const char *str, register unsigned int len)
165{
166 enum
167 {
Roman Zippel93449082008-01-14 04:50:54 +0100168 TOTAL_KEYWORDS = 32,
Roman Zippel7a884882005-11-08 21:34:51 -0800169 MIN_WORD_LENGTH = 2,
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700170 MAX_WORD_LENGTH = 14,
Roman Zippel7a884882005-11-08 21:34:51 -0800171 MIN_HASH_VALUE = 2,
Sam Ravnborg14f31562007-09-26 20:15:39 +0200172 MAX_HASH_VALUE = 48
Roman Zippel7a884882005-11-08 21:34:51 -0800173 };
174
175 static struct kconf_id wordlist[] =
176 {
177 {-1}, {-1},
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700178 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str2, T_ON, TF_PARAM},
Roman Zippel93449082008-01-14 04:50:54 +0100179 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str3, T_OPT_ENV, TF_OPTION},
180 {-1},
Sam Ravnborg14f31562007-09-26 20:15:39 +0200181 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str5, T_ENDIF, TF_COMMAND},
182 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str6, T_OPTION, TF_COMMAND},
183 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str7, T_ENDMENU, TF_COMMAND},
184 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str8, T_OPTIONAL, TF_COMMAND},
185 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str9, T_ENDCHOICE, TF_COMMAND},
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700186 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str10, T_RANGE, TF_COMMAND},
Sam Ravnborg14f31562007-09-26 20:15:39 +0200187 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str11, T_CHOICE, TF_COMMAND},
188 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str12, T_DEFAULT, TF_COMMAND, S_UNKNOWN},
189 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str13, T_DEFAULT, TF_COMMAND, S_BOOLEAN},
190 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str14, T_HELP, TF_COMMAND},
Roman Zippel93449082008-01-14 04:50:54 +0100191 {-1},
Sam Ravnborg14f31562007-09-26 20:15:39 +0200192 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str16, T_CONFIG, TF_COMMAND},
193 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str17, T_DEFAULT, TF_COMMAND, S_TRISTATE},
Roman Zippel93449082008-01-14 04:50:54 +0100194 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str18, T_TYPE, TF_COMMAND, S_HEX},
Sam Ravnborg14f31562007-09-26 20:15:39 +0200195 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str19, T_OPT_DEFCONFIG_LIST,TF_OPTION},
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700196 {-1},
Sam Ravnborg14f31562007-09-26 20:15:39 +0200197 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str21, T_TYPE, TF_COMMAND, S_STRING},
198 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str22, T_IF, TF_COMMAND|TF_PARAM},
199 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str23, T_TYPE, TF_COMMAND, S_INT},
Roman Zippel93449082008-01-14 04:50:54 +0100200 {-1}, {-1},
Sam Ravnborg14f31562007-09-26 20:15:39 +0200201 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str26, T_SELECT, TF_COMMAND},
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700202 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str27, T_OPT_MODULES, TF_OPTION},
Sam Ravnborg14f31562007-09-26 20:15:39 +0200203 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str28, T_TYPE, TF_COMMAND, S_TRISTATE},
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700204 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str29, T_MENU, TF_COMMAND},
205 {-1},
Sam Ravnborg14f31562007-09-26 20:15:39 +0200206 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str31, T_SOURCE, TF_COMMAND},
207 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str32, T_COMMENT, TF_COMMAND},
Roman Zippel93449082008-01-14 04:50:54 +0100208 {-1}, {-1},
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700209 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str35, T_MENUCONFIG, TF_COMMAND},
Sam Ravnborg14f31562007-09-26 20:15:39 +0200210 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str36, T_PROMPT, TF_COMMAND},
211 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str37, T_DEPENDS, TF_COMMAND},
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700212 {-1},
Roman Zippel93449082008-01-14 04:50:54 +0100213 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str39, T_TYPE, TF_COMMAND, S_BOOLEAN},
214 {-1},
215 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str41, T_SELECT, TF_COMMAND},
216 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str42, T_TYPE, TF_COMMAND, S_BOOLEAN},
217 {-1}, {-1}, {-1}, {-1}, {-1},
Sam Ravnborg14f31562007-09-26 20:15:39 +0200218 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str48, T_MAINMENU, TF_COMMAND}
Roman Zippel7a884882005-11-08 21:34:51 -0800219 };
220
221 if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
222 {
223 register int key = kconf_id_hash (str, len);
224
225 if (key <= MAX_HASH_VALUE && key >= 0)
226 {
227 register int o = wordlist[key].name;
228 if (o >= 0)
229 {
230 register const char *s = o + kconf_id_strings;
231
232 if (*str == *s && !strncmp (str + 1, s + 1, len - 1) && s[len] == '\0')
233 return &wordlist[key];
234 }
235 }
236 }
237 return 0;
238}
239